package com.l.utils;

import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;

import net.sf.json.JSONObject;

/**
 * 微信通过code获取openid工具类
 * 
 * @author victor
 * 
 */
public class GetOpenidUtil {
	
	public static String getopenid(String code) {
		String appid = "";
		String appsecret = "";
		Properties prop = new Properties();
		InputStream input = Thread.currentThread().getContextClassLoader().getResourceAsStream("appconfig.properties");
		try {
			prop.load(input);
			appid = prop.getProperty("appid");
			appsecret = prop.getProperty("appsecret");
			prop.clear();
			input.close();
		} catch (IOException e) {
			e.printStackTrace();
		}
		// 授权（必填）
		String grant_type = "authorization_code";
		// URL
		String requestUrl = "https://api.weixin.qq.com/sns/jscode2session";
		// 请求参数
		String params = "appid=" + appid + "&secret=" + appsecret + "&js_code=" + code + "&grant_type=" + grant_type;
		// 发送请求
		String data = HttpUtilForWx.sendPost(requestUrl, params);
		// 解析相应内容（转换成json对象）
		JSONObject json = JSONObject.fromObject(data);
		// 用户的唯一标识（openid）
		String Openid = String.valueOf(json.get("openid"));
		System.out.println("Openid:" + Openid);

		return Openid;

	}
}
